﻿#include <utils/Thread.h>

#include <thread>

int Thread::_generateId = 0;

Thread::Thread(ThreadFunc func):_func(func),_threadId(_generateId++)
{
}

void Thread::start()
{
	// 创建一个线程函数，这里的thread的方法就是在构造函数里面执行的
	std::thread t(_func, _threadId); // C++11 来说，线程对象t 和线程函数func_ 
	t.detach(); // 设置为分离线程，主线程和从线程func_ 
}

int Thread::getId() const
{
	return _threadId;
}
